package com.yu.shortlink.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yu.shortlink.project.dao.entity.ShortLinkDO;
import com.yu.shortlink.project.dto.req.RecycleBinRecoverReqDTO;
import com.yu.shortlink.project.dto.req.RecycleBinRemoveReqDTO;
import com.yu.shortlink.project.dto.req.RecycleBinSaveReqDTO;
import com.yu.shortlink.project.dto.req.ShortLinkRecycleBinPageReqDTO;
import com.yu.shortlink.project.dto.resp.ShortLinkPageRespDTO;

/**
 * @Author yushiwang
 * @Date 2024/6/25 22:43
 * @PackageName:com.yu.shortlink.project.service
 * @ClassName: RecyCleBinService
 * @Version 1.0
 */
public interface RecycleBinService extends IService<ShortLinkDO> {

    void saveRecycleBin(RecycleBinSaveReqDTO recycleBinSaveReqDTO);

    IPage<ShortLinkPageRespDTO> pageShortLink(ShortLinkRecycleBinPageReqDTO requestParam);

    void recoverRecycleBin(RecycleBinRecoverReqDTO requestParam);

    void removeRecycleBin(RecycleBinRemoveReqDTO requestParam);
}
